﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;

namespace NeuralNetworks.Learning
{
    public class LearningProperty : INotifyPropertyChanged
    {
        private int epochs;

        public int Epochs
        {
            get { return epochs; }
            set { epochs = value; }
        }
        private int neighbourhoodDist;

        public int NeighbourhoodDist
        {
            get { return neighbourhoodDist; }
            set { neighbourhoodDist = value; }
        }
        private double learningRatio;

        public double LearningRatio
        {
            get { return learningRatio; }
            set { learningRatio = value; }
        }
        private double conscience;

        public double Conscience
        {
            get { return conscience; }
            set { conscience = value; }
        }

        public event PropertyChangedEventHandler PropertyChanged;

        public LearningProperty(int epochs, double learningRation, int neighbourhoodDist, double conscience)
        {
            this.epochs = epochs;
            this.neighbourhoodDist = neighbourhoodDist;
            this.learningRatio = learningRation;
            this.conscience = conscience;

        }

        public LearningProperty(int epochs, double learningRation)
        {
            this.epochs = epochs;
            this.learningRatio = learningRation;
        }

        override public string ToString()
        {
            return this.epochs.ToString();

        }
    }
}
